home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / Libraries / DCLAP 6d / dclap6d / corelib / ncbilcl.i86 < prev    next >
Text File  |  1996-07-05  |  6KB  |  205 lines

  1. /*   ncbilcl.h
  2. * ===========================================================================
  3. *
  4. *                            PUBLIC DOMAIN NOTICE
  5. *               National Center for Biotechnology Information
  6. *
  7. *  This software/database is a "United States Government Work" under the
  8. *  terms of the United States Copyright Act.  It was written as part of
  9. *  the author's official duties as a United States Government employee and
  10. *  thus cannot be copyrighted.  This software/database is freely available
  11. *  to the public for use. The National Library of Medicine and the U.S.
  12. *  Government have not placed any restriction on its use or reproduction.
  13. *
  14. *  Although all reasonable efforts have been taken to ensure the accuracy
  15. *  and reliability of the software and data, the NLM and the U.S.
  16. *  Government do not and cannot warrant the performance or results that
  17. *  may be obtained by using this software or data. The NLM and the U.S.
  18. *  Government disclaim all warranties, express or implied, including
  19. *  warranties of performance, merchantability or fitness for any particular
  20. *  purpose.
  21. *
  22. *  Please cite the author in any work or product based on this material.
  23. *
  24. * ===========================================================================
  25. *
  26. * File Name:  ncbilcl.h
  27. *
  28. * Author:  Gish, Kans, Ostell, Schuler
  29. *
  30. * Version Creation Date:   1/1/91
  31. *
  32. * $Revision: 2.7 $
  33. *
  34. * File Description:
  35. *        system dependent header
  36. *        MS Windows version for CodeWarrior C++
  37. *
  38. * Modifications:
  39. * --------------------------------------------------------------------------
  40. * Date     Name        Description of modification
  41. * -------  ----------  -----------------------------------------------------
  42. * May 95   d.gilbert   codewarrior c++
  43. * ==========================================================================
  44. */
  45. #ifndef _NCBILCL_
  46. #define _NCBILCL_
  47.  
  48. /* PLATFORM DEFINITION FOR Intel + MS WINDOWS WITH CodeWarrior C++ */
  49.  
  50. #define COMP_CWI
  51. #define COMP_SYMC
  52. #define WIN_MSWIN
  53. #define WIN32BOR  /* !? */
  54.  
  55.  
  56.  
  57.         /* from Metroworks Headers.c/.h for Intel */
  58. /* Defines needed to compile windows headers  and/or MFC */
  59. #define _X86_
  60. #define _M_IX86 300
  61. //#define WIN32 1
  62. #define _WIN32
  63. #define _MSC_VER 900
  64. #define _AFX_PORTABLE
  65. #define _AFX_OLD_EXCEPTIONS
  66.  
  67.     /* WINNT.H and others use _asm, CodeWarIntel only knows asm */
  68. #define _asm  asm
  69.  
  70.     /*  avoid some messy MS Win headers !*/
  71. #define WIN32_LEAN_AND_MEAN
  72. #define _INC_MMSYSTEM
  73.  
  74.  
  75. #ifdef WIN32
  76. #define OS_WINNT
  77. #define NEAR
  78. #ifdef i386
  79. #define PROC_I80X86
  80. #define PROC_I80_386
  81. #define PASCAL    __stdcall
  82. #define CDECL    __cdecl
  83. #endif
  84. #ifdef MIPS
  85. #define PROC_MIPS
  86. #define PASCAL
  87. #define CDECL
  88. #endif
  89. #ifdef ALPHA
  90. #define PROC_ALPHA
  91. #define PASCAL
  92. #define CDECL
  93. #endif
  94.  
  95. #else
  96. #ifdef WIN32BOR
  97.  
  98.     /* dgg */
  99. #define OS_DOS
  100. #define PROC_I80X86
  101. #define FAR
  102. #define NEAR
  103. #define PASCAL    __stdcall
  104. #define CDECL    __cdecl
  105.  
  106. #else
  107. #define WIN16
  108. #define OS_DOS
  109. #define PROC_I80X86
  110. #define FAR        __far
  111. #define NEAR    __near
  112. #define PASCAL    __pascal
  113. #define CDECL    __cdecl
  114. #define EXPORT  __export
  115. #endif
  116. #endif
  117.  
  118.  
  119. /*----------------------------------------------------------------------*/
  120. /*      Desired or available feature list                               */
  121. /*----------------------------------------------------------------------*/
  122.  
  123. /*----------------------------------------------------------------------*/
  124. /*      #includes                                                       */
  125. /*----------------------------------------------------------------------*/
  126. #define __MSC__
  127.  
  128. #include <stddef.h>
  129. #include <time.h>
  130. #include <sys\types.h> 
  131. #include <limits.h>
  132. #include <sys\stat.h> 
  133. #include <stdio.h>
  134. #include <ctype.h>
  135. #include <string.h>
  136. #include <stdlib.h>
  137. #include <math.h>
  138. #include <errno.h>
  139. #include <float.h>
  140.  
  141. /*----------------------------------------------------------------------*/
  142. /*      Missing ANSI-isms                                               */
  143. /*----------------------------------------------------------------------*/
  144. #ifndef FILENAME_MAX
  145. #define FILENAME_MAX 63
  146. #endif
  147.  
  148. /*----------------------------------------------------------------------*/
  149. /*      Aliased Logicals, Datatypes                                     */
  150. /*----------------------------------------------------------------------*/
  151. #define PNTR * /* FAR * */
  152. #define HNDL * /* NEAR * */
  153.  
  154. typedef int (FAR PASCAL *Nlm_FnPtr)();
  155. #define FnPtr           Nlm_FnPtr
  156.  
  157. /*----------------------------------------------------------------------*/
  158. /*      Misc Macros                                                     */
  159. /*----------------------------------------------------------------------*/
  160. #define PROTO(x)    x    /* Function prototypes are real */
  161. #define VPROTO(x)    x    /* Prototype for variable argument list */
  162. #define DIRDELIMCHR    '\\'
  163. #define DIRDELIMSTR    "\\"
  164. #define CWDSTR    "."
  165.  
  166. #define KBYTE    (1024)
  167. #define MBYTE    (1048576L)
  168.  
  169. #define IS_LITTLE_ENDIAN
  170. #ifndef COMP_CWI
  171. #define TEMPNAM_AVAIL
  172. #endif
  173.  
  174. /*----------------------------------------------------------------------*/
  175. /*      For importing Microsoft C code                                  */
  176. /*----------------------------------------------------------------------*/
  177. #define _near near
  178. #define _far far
  179. #define _huge huge
  180. #define _cdecl cdecl
  181. #define _pascal pascal
  182. typedef unsigned int UINT;
  183. typedef unsigned long ULONG;
  184. typedef unsigned short USHORT;
  185. typedef unsigned char UCHAR;
  186.  
  187. /*----------------------------------------------------------------------*/
  188. /*      Macros for Floating Point                                       */
  189. /*----------------------------------------------------------------------*/
  190. #define EXP2(x) exp((x)*LN2)
  191. #define LOG2(x) (log(x)*(1./LN2))
  192. #define EXP10(x) exp((x)*LN10)
  193. #define LOG10(x) (log10(x))
  194.  
  195. /*----------------------------------------------------------------------*/
  196. /*      Macros Defining Limits                                          */
  197. /*----------------------------------------------------------------------*/
  198. #if defined(WIN32) || defined(WIN32BOR)  
  199. #define MAXALLOC    0x7F000000 /* Largest permissible memory request */
  200. #else
  201. #define MAXALLOC    0x10000 /* Largest permissible memory request */
  202. #endif
  203.  
  204. #endif
  205.